# Install packages
library(tidyverse)
library(sf)
library(leaflet)
library(leaflet.extras)
library(rgeos)
library(tmap)
library(tmaptools)
library(plotly)
knitr::opts_chunk$set(echo = TRUE)
# Import moose data
df_abmi <- read_csv("./Data/Raw/ABMIMetrics.csv")
df_all <- read_csv("./Data/Raw/Metrics.csv")
df_gov_recent <- read_csv("./Data/Raw/OSM_Ungulate_Survey_Data_2013-2018_Density.csv")
# Import spatial data (LAR, OSR, WMUs in study region)
ab_osr <- st_read("./SpatialData/AB_OSR.shp", stringsAsFactors = FALSE,
quiet = TRUE)
ab_wmu <- st_read("./SpatialData/AB_WMU-OSR-Intersect.shp",
stringsAsFactors = FALSE, quiet = TRUE)
ab_lar <- st_read("./SpatialData/AB_LAR.shp", stringsAsFactors = FALSE,
quiet = TRUE)
# Set projections
ab_osr <- st_transform(ab_osr, "+init=epsg:4326")
ab_wmu <- st_transform(ab_wmu, "+init=epsg:4326")
ab_lar <- st_transform(ab_lar, "+init=epsg:4326")We reviewed technical reports and peer-reviewed articles to assess the state of knowledge of moose in Alberta’s Oil Sands Region (OSR). Our intention was to elucidate what is known concerning moose in the region, and in particular, what the effect of oil and gas extraction has been on the moose population. We reviewed 33 documents (20 reports, 12 peer-reviewed articles, and 1 thesis) and extracted relevant estimates of moose population state variables. In addition, we utilized data from the Alberta Biodiversity Monitoring Institute’s (ABMI) camera monitoring program to corroborate this information and provide additional context around moose population density and relative abundance in the OSR.
The compiled metrics were used to construct estimates or describe the state of the moose population in the OSR. Average moose population density, among the Wildlife Management Units (WMUs) sampled, in the OSR is 0.17 per km2. We uncovered no clear trend in moose density across years or WMUs, although the sample size was often small. Similarly, moose calf:cow and bull:cow ratios were quite variable but also exhibited no clear trend in time or space. According to several studies, moose were sensitive to human disturbance, generally exhibiting low use and avoidance of human features across multiple scales of measurement.
In conclusion, moose are well studied in the OSR. Whereas no estimates of have revealed a downward trend in population density, due to the behavioural responses of moose to human disturbance, we recommend further work exploring changes in moose density at smaller scales in proximity to human disturbance.
Summarize data sources included in this review.
We included density estimates from 19 government reports. The average density of moose within WMUs of the OSR between 2014 and 2018 (the interval over which the Government of Alberta began using the distance sampling method for aerial surveys) is 0.17 animals per km^2. From 1993 to 2014, when the random block/Gasaway method was used, moose density averaged 0.18 per km^2.
Figure 1 below display the mean moose density across surveyed WMUs reported in Government of Alberta aerial ungulate survey reports. The error bars are one standard error. One year with an extreme density outlier (WMU 515 in 2004 with 1.2 animals per km^2) was removed from the figure for graphical clarity.
df_dens1 <- df_all %>%
filter(Response == "Density",
Species == "Moose",
!is.na(WMU),
!WMU == "506;510" & !WMU == "530 North" & !WMU == "530 South") %>%
mutate(WMU = as.numeric(str_replace_all(WMU, "530 Full", "530"))) %>%
select(WMU, StartYear, MetricNum) %>%
rename(Survey_Year = StartYear,
Density = MetricNum) %>%
full_join(df_gov_recent, by = c("WMU", "Survey_Year")) %>%
# WMUs 258, 511, and 519 have different density estimates.
mutate(Density = if_else(is.na(Density.y), Density.x, Density.y)) %>%
select(-c(Density.x, Density.y)) %>%
distinct() %>%
mutate(WMU = as.character(WMU))
df_dens2 <- df_dens1 %>%
group_by(Survey_Year) %>%
summarise(mean_dens = mean(Density),
count = n(),
se = sd(Density)/sqrt(count))
dens1 <- df_dens1 %>%
filter(Density < 1) %>%
ggplot(aes(x = Survey_Year, y = Density, colour = WMU)) +
geom_line() +
geom_point(size = 2.5) +
scale_x_continuous(breaks = c(1995, 2000, 2005, 2010, 2015)) +
# labs(y = expression(Density~(per~km^2)), x = "") +
theme_bw() +
theme(axis.text.x = element_text(size = 12, angle = 45, hjust = 1),
axis.text.y = element_text(size = 10))
# dens1
dens1_p <- ggplotly(dens1)
dens1_pdens2 <- df_dens2 %>%
filter(mean_dens < 1.2) %>%
ggplot(aes(x = Survey_Year, y = mean_dens)) +
geom_point(aes(size = count)) +
geom_errorbar(aes(ymin = mean_dens - se, ymax = mean_dens + se,
width = 0.1)) +
scale_x_continuous(breaks = c(1995, 2000, 2005, 2010, 2015)) +
labs(y = expression(Density~(per~km^2)), x = "") +
theme_bw() +
theme(axis.text.x = element_text(size = 12, angle = 45, hjust = 1),
axis.text.y = element_text(size = 10),
panel.border = element_blank(),
panel.grid.minor = element_blank())
dens2# dens2_p <- ggplotly(dens2)
# dens2_pThe map below displays the moose density associated with each WMU in the study region, calculated from the most recent aerial survey undertaken.
df_dens_curr <- df_dens1 %>%
group_by(WMU) %>%
slice(which.max(Survey_Year)) %>%
mutate(Method = ifelse(Survey_Year >= 2014,
"Distance Sampling",
"Random Block/Gasaway"))
ab_wmu <- st_read("./SpatialData/AB_WMU-OSR-Intersect.shp",
stringsAsFactors = FALSE, quiet = TRUE)
ab_prov <- st_read("./SpatialData/AB_Prov.shp",
stringsAsFactors = FALSE, quiet = TRUE)
ab_osr <- st_read("./SpatialData/AB_WMU-OSR-Dissolve.shp",
stringsAsFactors = FALSE, quiet = TRUE)
ab_wmu <- ab_wmu %>%
separate(WMUNIT_COD, into = c("zeroes", "WMU"), sep = 2, remove = FALSE) %>%
select(-zeroes) %>%
filter(WMU %in% df_dens_curr$WMU) %>%
left_join(df_dens_curr, by = "WMU") %>%
select(WMUNIT_NAM, WMU, Survey_Year:Method) %>%
st_transform("+init=epsg:4326") %>%
st_cast("POLYGON")
ab_prov <- ab_prov %>%
st_transform("+init=epsg:4326")
ab_osr <- ab_osr %>%
st_transform("+init=epsg:4326")
# Static map
# Using ggplot
gg_map_dens <- ab_wmu %>%
ggplot() +
geom_sf(aes(fill = Density)) +
geom_sf_label(aes(label = WMU)) +
coord_sf(datum = NA) +
theme_void()
# gg_map_dens
legend_title <- expression("Density (animals per km"^2*")")
# Using tmap
tm_map_dens <-
tm_shape(ab_wmu) +
tm_fill(col = "Density", title = legend_title) +
tm_borders(col = "black") +
tm_fill(col = "Density", title = legend_title) +
tm_text("WMU", size = 0.65) +
tm_compass(type = "4star", size = 2,
position = c("left", "bottom")) +
tm_scale_bar(position = c("left", "bottom"))
tm_map_dens# tmap_leaflet(tm_map_dens)The interactive map below displays the moose density associated with each WMU in the study region, calculated from the most recent aerial survey undertaken.
# Interactive leaflet map
# Define colours
pal_1 <- colorNumeric(palette = "YlOrBr", domain = ab_wmu$Density)
# Create df of WMU centroids for labels
df_centers <- ab_wmu %>%
st_centroid() %>%
as_Spatial()
map_1 <-
ab_prov %>%
leaflet() %>%
addTiles() %>%
addProviderTiles("Stamen.TerrainBackground") %>%
addProviderTiles("Esri.WorldImagery", group = "Imagery") %>%
addFullscreenControl() %>%
addResetMapButton() %>%
addScaleBar(position = "bottomright",
options = scaleBarOptions(imperial = FALSE)) %>%
setView(lng = -113.07, lat = 56.53, zoom = 7) %>%
# Polygon layers
addPolygons(color = "#070707", weight = 1, smoothFactor = 0.2,
opacity = 2.0) %>%
addPolygons(data = ab_wmu, color = "#070707", weight = 0.8,
smoothFactor = 0.5, opacity = 1.0, fillOpacity = 0.75,
fillColor = ~ pal_1(Density),
popup = paste("WMU Name:",
"<b>", ab_wmu$WMUNIT_NAM, "</b>", "<br>",
"WMU Code:",
"<b>", ab_wmu$WMU, "</b>", "<br>",
"Moose Density:",
"<b>", ab_wmu$Density, "</b>", "per km2", "<br>",
"<br>",
"<i>", "Last surveyed in",
ab_wmu$Survey_Year, "<i>"),
group = "Moose Density - Aerial Surveys") %>%
# Labels
addLabelOnlyMarkers(data = df_centers, label = ~WMUNIT_NAM,
group = "Moose Density - Aerial Surveys",
labelOptions = labelOptions(
noHide = TRUE,
textOnly = FALSE,
textsize = "10px",
opacity = 1,
offset = c(0,0)
)) %>%
# Legend layer
addLegend(data = ab_wmu, position = "bottomleft", pal = pal_1, bins = 6,
values = ~Density,
title = "Moose Density:<br>Animals per km2",
opacity = 0.9, group = "Moose Density - Aerial Surveys") %>%
# Layers control
addLayersControl(overlayGroups = c("Imagery",
"Moose Density - Aerial Surveys"),
options = layersControlOptions(collapsed = FALSE)) %>%
hideGroup("Imagery")
map_1Comparison with ABMI WMU-level density estimates Discuss process for calculation?
Only one document (Rolley and Keith, 1980) estimated the geometric rate of increase of moose populations in northeastern Alberta directly. Whereas the study area was not within the OSR, we present the values here as a historical reference. In Rochester, Alberta, which was the study area, the geometric rate of increase in moose was 1.24 and 1.03 in 1965 and 1979, respectively.
We calculated lambda for 9 WMUs from 13 Government of Alberta reports between 1993 and 2013 (Table). Across all WMUs and years, mean lambda was 1.03. As should be expected given the stability of moose density in Northeastern Alberta, lambda is near one for all WMUs with reported metrics of density across multiple years (Table) but varies by WMU, with growth rates generally decreasing with latitute.
Insert map … diverging colour scale: blue (lower than 1) to red (higher than 1)
Of the documents we reviewed, 22 reported on either calf:cow or bull:cow ratios (or both). Including multiple values from Government of Alberta reports provided a total of 116 data points of either sex or calf ratios.
Across all years and WMUs for which ratios were reported,
As shown in Figures, no clear trend in sex of calf ratios was observed either temporally or spatially.
We extracted either adult or calf survival values from three reviewed documents (9% of the total) for a combined 10 survival estimates. Calf survival was lower than adult survival and was higher when estimated with GPS telemetry vs. radio telemetry.
Table?
Here is were we include ABMI relative abundance predictions - right?
Section with qualitative discussion regarding impacts of various HF, disturbance, and landcover on moose population parameters.